/*
 * @(#)SpringBeanFactory.java   2015.九月.28 02:50 下午
 * 
 * Copyright (c) 2015 www.7jia2.com
 *
 * 版权声明： 版权所有 违者必究 2015
 *
 */

package com.spt.pay.config;

//~--- non-JDK imports --------------------------------------------------------

import org.springframework.context.ApplicationContext;
import org.springframework.web.context.ContextLoaderListener;

/**
 * @ClassName: SpringBeanFactory
 * @Description:Spring 容器获取类
 * @Date:2015.九月.28 02:50 下午
 * @version        0.8, 2015.九月.28 02:50 下午
 * @author         xu.wengang@7jia2.com  
 */
public class SpringBeanFactory {
    /** (用一句话描述做什么的.....) */
    private static ApplicationContext ctx;

    /** 通过ContextLoaderListener取得ctx */
    public static void initApplicationContext(){
        ctx = ContextLoaderListener.getCurrentWebApplicationContext();
    }

    /**
     * 通过泛型方法取得bean实例 
     * @param name
     * @param <T>
     * @return
     */
    public static < T > T getBean(String name){
        if (ctx == null) {
            initApplicationContext();
        }
        return (T) ctx.getBean(name);
    }
}

